/*
 * @Author: cooper
 * @Date: 2025-04-03 23:26:37
 * @Wechat: cmd_develop
 * @Description:
 */
#ifndef __BSP_STEP
#define __BSP_STEP

#include "common.h"

extern TaskHandle_t step_task_handler;
extern QueueHandle_t step_work_queue;

// 定义事件组
#define EVENT_ARM_RELEASE 0 // 定义一个事件位，用来标识ARM_LONG任务释放信号
#define EVENT_ARM_LONG_RELEASE 1
#define EVENT_ARM_SHORT_RELEASE 2
#define EVENT_ARM_Z_RELEASE 3
#define EVENT_ARM_PAW_RELEASE 4
#define EVENT_ARM_STICK_RELEASE 5

#define EVENT_LIFT_UPDOWN_RELEASE 1 // 定义一个事件位，用来标识ARM_LONG任务释放信号

void STEP_TASK(void);
void STEP_TEST(void);
u8 STEP_ARM(int argc, char *argv[]);
u8 STEP_ARM_POS(int argc, char *argv[]);
u8 STEP_LIFT(int argc, char *argv[]);
u8 STEP_LIFT_POS(int argc, char *argv[]);
u8 STEP_FOOD(int argc, char *argv[]);
u8 STEP_FOOD_POS(int argc, char *argv[]);
void STEP_DOOR_ZERO(void);
void STEP_TEMP(int argc, char *argv[]);
void STEP_SERVO(int argc, char *argv[]);
#endif
